// @ts-ignore
/* eslint-disable */
import { request } from '@umijs/max';

/** addClassInfo POST /api/classInfo/add */
export async function addClassInfoUsingPost(
  body: API.ClassInfoAddRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponseLong_>('/api/classInfo/add', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** dayNewlyAddedClassInfo POST /api/classInfo/day/newly/added */
export async function dayNewlyAddedClassInfoUsingPost(options?: { [key: string]: any }) {
  return request<API.BaseResponseListDataGroupByDateDTO_>('/api/classInfo/day/newly/added', {
    method: 'POST',
    ...(options || {}),
  });
}

/** deleteClassInfo POST /api/classInfo/delete */
export async function deleteClassInfoUsingPost(
  body: API.DeleteRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponseBoolean_>('/api/classInfo/delete', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** editClassInfo POST /api/classInfo/edit */
export async function editClassInfoUsingPost(
  body: API.ClassInfoEditRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponseBoolean_>('/api/classInfo/edit', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** getClassInfoVOById GET /api/classInfo/get/vo */
export async function getClassInfoVoByIdUsingGet(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.getClassInfoVOByIdUsingGETParams,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponseClassInfoVO_>('/api/classInfo/get/vo', {
    method: 'GET',
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** listClassInfoByPage POST /api/classInfo/list/page */
export async function listClassInfoByPageUsingPost(
  body: API.ClassInfoQueryRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponsePageClassInfo_>('/api/classInfo/list/page', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** listClassInfoVOByPage POST /api/classInfo/list/page/vo */
export async function listClassInfoVoByPageUsingPost(
  body: API.ClassInfoQueryRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponsePageClassInfoVO_>('/api/classInfo/list/page/vo', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** listMyClassInfoVOByPage POST /api/classInfo/my/list/page/vo */
export async function listMyClassInfoVoByPageUsingPost(
  body: API.ClassInfoQueryRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponsePageClassInfoVO_>('/api/classInfo/my/list/page/vo', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** updateClassInfo POST /api/classInfo/update */
export async function updateClassInfoUsingPost(
  body: API.ClassInfoUpdateRequest,
  options?: { [key: string]: any },
) {
  return request<API.BaseResponseBoolean_>('/api/classInfo/update', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}
